Accelerometer system and method

ABSTRACT

A vehicle accelerometer system comprises an accelerometer for installation in a vehicle, a processor for selection of accelerometer output data items for inclusion in an accelerometer output data set representative of measurements by the accelerometer at a plurality of different vehicle locations, each accelerometer output data item being representative of a respective measurement by the accelerometer, and a storage device for storing the accelerometer output data set, wherein the processor is configured to process the accelerometer output data set to determine an orientation output representative of the orientation of the accelerometer with respect to the vehicle.

FIELD OF THE INVENTION

The present invention relates to an accelerometer system and method, andin particular to an accelerometer and method for installation or use ina vehicle. The invention may be of particular relevance to anaccelerometer that is included in or configured to communicate with anavigation device.

BACKGROUND TO THE INVENTION

Navigation devices that include GPS (Global Positioning System) signalreception and processing functionality are well known and are widelyemployed as in-car or other vehicle navigation systems.

In general terms, a modern navigation device may comprise a processor,memory (at least one of volatile and non-volatile, and commonly both),and map data stored within said memory. The processor and memory usuallycooperate to provide an execution environment in which a softwareoperating system may be established, and additionally it is commonplacefor one or more additional software programs to be provided to enablethe functionality of the navigation device to be controlled, and toprovide various other functions.

Typically these devices further comprise one or more input interfacesthat allow a user to interact with and control the device, and one ormore output interfaces by means of which information may be relayed tothe user. Illustrative examples of output interfaces include a visualdisplay and a speaker for audible output. Illustrative examples of inputinterfaces include one or more physical buttons to control on/offoperation or other features of the device (which buttons need notnecessarily be on the device itself but could be on a steering wheel ifthe device is built into a vehicle), and a microphone for detecting userspeech. In one arrangement the output interface display may beconfigured as a touch sensitive display (by means of a touch sensitiveoverlay or otherwise) to additionally provide an input interface bymeans of which a user can operate the device by touch.

Devices of this type will also often include one or more physicalconnector interfaces by means of which power and optionally data signalscan be transmitted to and received from the device, and optionally oneor more wireless transmitters/receivers to allow communication overcellular telecommunications and other signal and data networks, forexample Wi-Fi, Wi-Max GSM and the like.

Navigation devices of this type also usually include a GPS antenna bymeans of which satellite-broadcast signals, including location data, canbe received and subsequently processed to determine a current locationof the device.

The navigation device may also include or be configured to communicatewith angular or linear accelerometers which produce signals that can beprocessed to determine the current angular and linear acceleration, andin turn, and in conjunction with location information derived from theGPS signal, velocity and relative displacement of the device and thusthe vehicle in which it is mounted. Typically such features are mostcommonly provided in in-vehicle navigation systems, but may also beprovided in navigation devices if it is expedient to do so.Accelerometer data may be stored and used to determine whether anyexceptional driving events (for example, harsh braking or acceleration,swerving or other emergency manoeuvres) have occurred during a period oftime.

Accelerometers may also be included in black box devices for vehicles,which do not provide navigation functions but log location, speed,acceleration and other vehicle data for transmission to a centralserver. Such devices are often included in commercial vehicles such aslorries, buses and taxis for monitoring purposes.

The position of installation of a navigation device, or other telematicdevice inside a vehicle is important, as internal antennas of the deviceare directly influenced by the position. For example a GPS antennashould have a clear view to the sky, and if it is located on one side ofthe device, that side should be the “upper side” when it is installed.

Furthermore, it is necessary to know the orientation of an accelerometeraccurately in order to correctly process acceleration data from theaccelerometer, and to correctly detect driving events such as curvedriving or harsh braking or acceleration. Another problem is thataccelerometers are often susceptible to temperature fluctuations,resulting in changes of measured acceleration data.

In known systems the installation position and orientation of atelematic device with respect to a vehicle is usually unknown, and thebearing and orientation of the vehicle with respect to the ground isunknown and frequently changes.

At present the installation position of a telematic and/or accelerometerdevice is determined by manual calibration, for example by manuallypressing a button when the device is being installed and fixed to thecar by the installer. At the time of calibration all relevantenvironmental conditions are known and can be used to calibrate thedevice correctly. Such calibrations are also usually performed on levelground, and the output of the accelerometer device can thus becalibrated.

Manual calibrations are time-consuming and subsequent variations inenvironmental conditions (for example, seasonal or daily variations intemperature) can subsequently cause inaccuracies. Furthermore, if theinitial calibration is carried out inaccurately or if the orientation ofa device changes after installation, there may be persistent, systematicinaccuracies in operation of the device.

SUMMARY OF THE INVENTION

According to a first aspect of the present invention, there is provideda vehicle accelerometer system comprising an accelerometer forinstallation in a vehicle; a processor for selection of accelerometeroutput data items for inclusion in an accelerometer output data setrepresentative of measurements by the accelerometer at a plurality ofdifferent vehicle locations, each accelerometer output data item beingrepresentative of a respective measurement by the accelerometer; and astorage device for storing the accelerometer output data set, whereinthe processor is configured to process the accelerometer output data setto determine an orientation output representative of the orientation ofthe accelerometer with respect to the vehicle.

By storing and processing accelerometer output data items from aplurality of different locations, the effect on the processing of theaccelerometer output data of the vehicle not being on level ground forany one of the locations may be eliminated or compensated for. Theaverage slope of the ground across a plurality of locations will tendtowards zero as the number of locations increases.

The processor may operable to communicate with the accelerometer and/ormay be configured in operation to receive data from the accelerometer,for example via a wired or wireless communication link. The processormay be configured to provide an output signal representative of theorientation output.

The orientation output may be the orientation of the accelerometer withrespect to the vehicle. The orientation may be expressed as a set ofangular values. The orientation output may be representative of thepitch and/or roll of the accelerometer with respect to the vehicle.

The orientation output may comprise a reference output representative ofthe output from the accelerometer when the vehicle is on level ground.The reference output may, for example, be suitable for subtraction fromfuture accelerometer outputs in order to correct those futureaccelerometer outputs for the orientation of the accelerometer withrespect to the vehicle.

The processing of the accelerometer output data set may comprise fittingthe accelerometer output data set to a function and/or the processingmay comprise determining a mean or median value of the accelerometermeasurements represented by the accelerometer output data set, and usingthe determined mean or median value to determine the orientation output.Effects due to the inclination of the ground for any one of themeasurements may be eliminated by obtaining a mean or median valueacross all measurements. The orientation output may comprise the mean ormedian value of the accelerometer measurements.

The system may comprise or be configured to communicate with a locationdetermining unit. The location determining unit may be installed in thevehicle and/or may be for determining the location of the vehicle. Theprocessor may be configured to determine vehicle speed and/or locationfrom measurement data obtained from the location detemining unit.

The processor may be configured to select an accelerometer output dataitem for inclusion in the accelerometer output data set in dependence onthe speed of the vehicle at the time of the accelerometer measurement.The system may comprise speed determining means for determining thespeed of the vehicle at the time of the accelerometer measurement. Thespeed determining means may determine the speed from the variation withtime of the location determined by the location determining unit.

Each output data item included in the accelerometer output data set maybe representative of a respective measurement by the accelerometer whenthe vehicle is substantially stationary. The system may comprise meansfor determining if the vehicle is substantially stationary. The meansfor determining if the vehicle is substantially stationary may compriseor may be configured to communicate with a or the location determiningunit.

The processor may be configured to select an accelerometer output dataitem for inclusion in the accelerometer output data set in dependence onthe location of the vehicle at the time of the accelerometermeasurement. The location of the vehicle at the time of theaccelerometer measurement may be determined by the location determiningunit.

The processor may be configured to select an accelerometer output dataitem for inclusion in the accelerometer output data set in dependence onthe separation of the location of the vehicle at the time of themeasurement from the location of the vehicle at the time of measurementsrepresented by other output data items.

The processor may be configured to select accelerometer output dataitems so that each accelerometer data item is representative of ameasurement at a location that is separated from the location of eachother measurement represented by an accelerometer data item included inthe accelerometer data set by at least a threshold separation distance.The threshold separation distance may be greater than or substantiallyequal to at least one of 50 m, 100 m and 200 m. Thus, it can be ensuredthat errors arising from basing the determination of orientation uponmeasurements that are obtained at closely spaced locations, which maynot have an average slope of zero, are reduced or eliminated.

The system may comprise means for determining the value of at least oneenvironmental parameter. The processor may be configured to select anaccelerometer output data item for inclusion in the accelerometer outputdata set in dependence on the value of an environmental parameter at thetime of the accelerometer measurement. The processor may be configuredto select an accelerometer output data item for inclusion in theaccelerometer output data set in dependence on a comparison between thevalue of the environmental parameter and at least one threshold. Thus,possible errors arising from the effects of variation of the value of anenvironmental parameter on operation of the accelerometer may be reducedor eliminated.

The processor may be configured to provide a plurality of accelerometeroutput data sets each corresponding to a respective range or value of anenvironmental parameter, and to process each accelerometer output dataset to determine a reference output for each range or value of theenvironmental parameter.

The processor may be configured to select one of the accelerometeroutput data sets in which to include an accelerometer output data itemin dependence on the value of the environmental parameter at the time ofthe accelerometer measurement represented by that accelerometer outputdata item. The environmental parameter may comprise temperature.

The processor may be configured to process the accelerometer output dataset to determine the orientation output if the number of output dataitems in the accelerometer output data set is greater than apredetermined threshold.

The processor may be configured to remove accelerometer output dataitems that are representative of old accelerometer measurements from theaccelerometer output data set. The processor may be configured to removeaccelerometer output data items that are older than a threshold age.Alternatively or additionally the processor may be configured tomaintain a predetermined number of accelerometer output data item in theaccelerometer output data set. The number of accelerometer output dataitem in the accelerometer output data set may be maintained on afirst-in-first-out basis.

The processor may be configured to receive an acceleration output dataitem from the accelerometer and to determine the acceleration of thevehicle in dependence on the acceleration output data item and theorientation output so as to compensate for the orientation of theaccelerometer with respect to the vehicle.

In a further independent aspect of the invention there is provided amethod of operation of an accelerometer system comprising:—receivingaccelerometer output data items from an accelerometer, eachaccelerometer output data item being representative of a respectivemeasurement by the accelerometer; selecting a plurality of theaccelerometer output data items for inclusion in an accelerometer outputdata set; storing the accelerometer output data set; and processing theaccelerometer output data set to determine an orientation outputrepresentative of the orientation of the accelerometer with respect tothe vehicle.

In another independent aspect of the invention there is provided acomputer program product comprising computer readable instructionsexecutable to put into effect a method as claimed or described herein.

Any feature in one aspect of the invention may be applied to otheraspects of the invention, in any appropriate combination. In particular,apparatus features may be applied to method features and vice versa.

BRIEF DESCRIPTION OF THE DRAWINGS

At least one embodiment of the invention will now be described, by wayof example only, with reference to the accompanying drawings, in which:

FIG. 1 is a schematic illustration of a Global Positioning System (GPS)usable by a navigation device;

FIG. 2 is a schematic illustration of electronic components of anavigation device;

FIG. 3 is a schematic diagram of a communications system including awireless communication channel for communication with the navigationdevice;

FIG. 4 is a schematic representation of an architectural stack of thenavigation device of FIG. 2;

FIG. 5 is an illustrative screenshot from the navigation device of FIG.2;

FIGS. 6a and 6b are schematic diagrams showing the orientation of anaccelerometer device installed in a vehicle;

FIG. 7 is a schematic diagram showing illustrating three vehiclelocations for which accelerator measurements are included in anaccelerometer data set;

FIGS. 8a and 8b are schematic illustrations showing measuredacceleration vectors for the vehicle locations of FIG. 7 with respect toan accelerometer frame of reference;

FIG. 9 is a flowchart illustrating one mode of operation of anembodiment;

FIG. 10 is a flowchart illustrating a further mode of operation of anembodiment; and

FIG. 11 is a schematic illustration of an alternative embodiment inwhich an accelerometer is included in a data logger device.

DETAILED DESCRIPTION OF EMBODIMENTS

Embodiments of the present invention will now be described withparticular reference to a system that comprises a navigation device thatincludes an accelerometer or is configured to communicate with anaccelerometer. The teachings of the present invention are not limited tosuch systems but are instead universally applicable to any type ofaccelerometer system. Furthermore, in the embodiments described belowthe navigation device is installed permanently in a vehicle, for exampleby an original equipment manufacturer. In alternative embodiments, thenavigation device may be (without limitation) any type of route planningand/or navigation device, irrespective of whether that device isembodied as a portable navigation device (PND), a navigation devicebuilt into a vehicle, or indeed a computing resource (such as a desktopor portable personal computer (PC), mobile telephone or portable digitalassistant (PDA)) executing route planning and/or navigation software.

Features of a navigation device will be described first, with referenceto FIGS. 1 to 5. Features of an accelerometer that is included in orassociated with the navigation device will then be described withreference to FIGS. 6 to 11.

FIG. 1 illustrates an example view of Global Positioning System (GPS),usable by navigation devices. Such systems are known and are used for avariety of purposes. In general, GPS is a satellite-radio basednavigation system capable of determining continuous position, velocity,time, and in some instances direction information for an unlimitednumber of users. Formerly known as NAVSTAR, the GPS incorporates aplurality of satellites which orbit the earth in extremely preciseorbits. Based on these precise orbits, GPS satellites can relay theirlocation to any number of receiving units.

The GPS system is implemented when a device, specially equipped toreceive GPS data, begins scanning radio frequencies for GPS satellitesignals. Upon receiving a radio signal from a GPS satellite, the devicedetermines the precise location of that satellite via one of a pluralityof different conventional methods. The device will continue scanning, inmost instances, for signals until it has acquired at least threedifferent satellite signals (noting that position is not normally, butcan be determined, with only two signals using other triangulationtechniques). Implementing geometric triangulation, the receiver utilizesthe three known positions to determine its own two-dimensional positionrelative to the satellites. This can be done in a known manner.Additionally, acquiring a fourth satellite signal will allow thereceiving device to calculate its three dimensional position by the samegeometrical calculation in a known manner. The position and velocitydata can be updated in real time on a continuous basis by an unlimitednumber of users.

As shown in FIG. 1, the GPS system is denoted generally by referencenumeral 100. A plurality of satellites 120 are in orbit about the earth124. The orbit of each satellite 120 is not necessarily synchronous withthe orbits of other satellites 120 and, in fact, is likely asynchronous.A GPS receiver 140 is shown receiving spread spectrum GPS satellitesignals 160 from the various satellites 120.

The spread spectrum signals 160, continuously transmitted from eachsatellite 120, utilize a highly accurate frequency standard accomplishedwith an extremely accurate atomic clock. Each satellite 120, as part ofits data signal transmission 160, transmits a data stream indicative ofthat particular satellite 120. It is appreciated by those skilled in therelevant art that the GPS receiver device 140 generally acquires spreadspectrum GPS satellite signals 160 from at least three satellites 120for the GPS receiver device 140 to calculate its two-dimensionalposition by triangulation. Acquisition of an additional signal,resulting in signals 160 from a total of four satellites 120, permitsthe GPS receiver device 140 to calculate its three-dimensional positionin a known manner.

FIG. 2 is an illustrative representation of electronic components of anavigation device 200 according to an embodiment of the presentinvention, in block component format. It should be noted that the blockdiagram of the navigation device 200 is not inclusive of all componentsof the navigation device, but is only representative of many examplecomponents.

The navigation device 200 is located within a housing (not shown). Thehousing includes a processor 210 connected to an input device 220 and adisplay screen 240. The input device 220 can include a keyboard device,voice input device, touch panel and/or any other known input deviceutilised to input information; and the display screen 240 can includeany type of display screen such as an LCD display, for example. In onearrangement the input device 220 and display screen 240 are integratedinto an integrated input and display device, including a touchpad ortouchscreen input so that a user need only touch a portion of thedisplay screen 240 to select one of a plurality of display choices or toactivate one of a plurality of virtual buttons.

The navigation device may include an output device 260, for example anaudible output device (e.g. a loudspeaker). As output device 260 canproduce audible information for a user of the navigation device 200, itis should equally be understood that input device 240 can include amicrophone and software for receiving input voice commands as well.

The navigation device includes an accelerometer 290, and the processor210 is configured to communicate with the accelerometer as described inmore detail below.

In the navigation device 200, processor 210 is operatively connected toand set to receive input information from input device 220 via aconnection 225, and operatively connected to at least one of displayscreen 240 and output device 260, via output connections 245, to outputinformation thereto. Further, the processor 210 is operably coupled to amemory resource 230 via connection 235 and is further adapted toreceive/send information from/to input/output (I/O) ports 270 viaconnection 275, wherein the I/O port 270 is connectible to an I/O device280 external to the navigation device 200. The memory resource 230comprises, for example, a volatile memory, such as a Random AccessMemory (RAM) and a non-volatile memory, for example a digital memory,such as a flash memory. The external I/O device 280 may include, but isnot limited to an external listening device such as an earpiece forexample. The connection to I/O device 280 can further be a wired orwireless connection to any other external device such as a car stereounit for hands-free operation and/or for voice activated operation forexample, for connection to an ear piece or head phones, and/or forconnection to a mobile phone for example, wherein the mobile phoneconnection may be used to establish a data connection between thenavigation device 200 and the internet or any other network for example,and/or to establish a connection to a server via the internet or someother network for example.

FIG. 2 further illustrates an operative connection between the processor210 and an antenna/receiver 250 via connection 255, wherein theantenna/receiver 250 can be a GPS antenna/receiver for example. It willbe understood that the antenna and receiver designated by referencenumeral 250 are combined schematically for illustration, but that theantenna and receiver may be separately located components, and that theantenna may be a GPS patch antenna or helical antenna for example.

Further, it will be understood by one of ordinary skill in the art thatthe electronic components shown in FIG. 2 are powered by power sources(not shown) in a conventional manner. As will be understood by one ofordinary skill in the art, different configurations of the componentsshown in FIG. 2 are considered to be within the scope of the presentapplication. For example, the components shown in FIG. 2 may be incommunication with one another via wired and/or wireless connections andthe like.

Referring now to FIG. 3, the navigation device 200 may establish a“mobile” or telecommunications network connection with a server 302 viaa mobile device (not shown) (such as a mobile phone, PDA, and/or anydevice with mobile phone technology) establishing a digital connection(such as a digital connection via known Bluetooth technology forexample). Thereafter, through its network service provider, the mobiledevice can establish a network connection (through the internet forexample) with a server 302. As such, a “mobile” network connection isestablished between the navigation device 200 (which can be, and oftentimes is mobile as it travels alone and/or in a vehicle) and the server302 to provide a “real-time” or at least very “up to date” gateway forinformation.

The establishing of the network connection between the mobile device(via a service provider) and another device such as the server 302,using an internet (such as the World Wide Web) for example, can be donein a known manner. This can include use of TCP/IP layered protocol forexample. The mobile device can utilize any number of communicationstandards such as CDMA, GSM, WAN, etc.

As such, an internet connection may be utilised which is achieved viadata connection, via a mobile phone or mobile phone technology withinthe navigation device 200 for example. For this connection, an internetconnection between the server 302 and the navigation device 200 isestablished. This can be done, for example, through a mobile phone orother mobile device and a GPRS (General Packet Radio Service)-connection(GPRS connection is a high-speed data connection for mobile devicesprovided by telecom operators; GPRS is a method to connect to theinternet).

The navigation device 200 can further complete a data connection withthe mobile device, and eventually with the internet and server 302, viaexisting Bluetooth technology for example, in a known manner, whereinthe data protocol can utilize any number of standards, such as the GSRM,the Data Protocol Standard for the GSM standard, for example.

The navigation device 200 may include its own mobile phone technologywithin the navigation device 200 itself (including an antenna forexample, or optionally using the internal antenna of the navigationdevice 200). The mobile phone technology within the navigation device200 can include internal components as specified above, and/or caninclude an insertable card (e.g. Subscriber Identity Module or SIMcard), complete with necessary mobile phone technology and/or an antennafor example. As such, mobile phone technology within the navigationdevice 200 can similarly establish a network connection between thenavigation device 200 and the server 302, via the internet for example,in a manner similar to that of any mobile device.

For GPRS phone settings, a Bluetooth enabled navigation device may beused to correctly work with the ever changing spectrum of mobile phonemodels, manufacturers, etc., model/manufacturer specific settings may bestored on the navigation device 200 for example. The data stored forthis information can be updated.

In FIG. 3 the navigation device 200 is depicted as being incommunication with the server 302 via a generic communications channel318 that can be implemented by any of a number of differentarrangements. The server 302 and a navigation device 200 can communicatewhen a connection via communications channel 318 is established betweenthe server 302 and the navigation device 200 (noting that such aconnection can be a data connection via mobile device, a directconnection via personal computer via the internet, etc.).

The server 302 includes, in addition to other components which may notbe illustrated, a processor 304 operatively connected to a memory 306and further operatively connected, via a wired or wireless connection314, to a mass data storage device 312. The processor 304 is furtheroperatively connected to transmitter 308 and receiver 310, to transmitand send information to and from navigation device 200 viacommunications channel 318. The signals sent and received may includedata, communication, and/or other propagated signals. The transmitter308 and receiver 310 may be selected or designed according to thecommunications requirement and communication technology used in thecommunication design for the navigation system 200. Further, it shouldbe noted that the functions of transmitter 308 and receiver 310 may becombined into a signal transceiver.

Server 302 is further connected to (or includes) a mass storage device312, noting that the mass storage device 312 may be coupled to theserver 302 via communication link 314. The mass storage device 312contains a store of navigation data and map information, and can againbe a separate device from the server 302 or can be incorporated into theserver 302.

The navigation device 200 is adapted to communicate with the server 302through communications channel 318, and includes processor, memory, etc.as previously described with regard to FIG. 2, as well as transmitter320 and receiver 322 to send and receive signals and/or data through thecommunications channel 318, noting that these devices can further beused to communicate with devices other than server 302. Further, thetransmitter 320 and receiver 322 are selected or designed according tocommunication requirements and communication technology used in thecommunication design for the navigation device 200 and the functions ofthe transmitter 320 and receiver 322 may be combined into a singletransceiver.

Software stored in server memory 306 provides instructions for theprocessor 304 and allows the server 302 to provide services to thenavigation device 200. One service provided by the server 302 involvesprocessing requests from the navigation device 200 and transmittingnavigation data from the mass data storage 312 to the navigation device200. Another service provided by the server 302 includes processing thenavigation data using various algorithms for a desired application andsending the results of these calculations to the navigation device 200.

The communication channel 318 generically represents the propagatingmedium or path that connects the navigation device 200 and the server302. Both the server 302 and navigation device 200 include a transmitterfor transmitting data through the communication channel and a receiverfor receiving data that has been transmitted through the communicationchannel.

The communication channel 318 is not limited to a particularcommunication technology. Additionally, the communication channel 318 isnot limited to a single communication technology; that is, the channel318 may include several communication links that use a variety oftechnology. For example, the communication channel 318 can be adapted toprovide a path for electrical, optical, and/or electromagneticcommunications, etc. As such, the communication channel 318 includes,but is not limited to, one or a combination of the following: electriccircuits, electrical conductors such as wires and coaxial cables, fibreoptic cables, converters, radio-frequency (RF) waves, the atmosphere,empty space, etc. Furthermore, the communication channel 318 can includeintermediate devices such as routers, repeaters, buffers, transmitters,and receivers, for example.

In one illustrative arrangement, the communication channel 318 includestelephone and computer networks. Furthermore, the communication channel318 may be capable of accommodating wireless communication such as radiofrequency, microwave frequency, infrared communication, etc.Additionally, the communication channel 318 can accommodate satellitecommunication.

The communication signals transmitted through the communication channel318 include, but are not limited to, signals as may be required ordesired for given communication technology. For example, the signals maybe adapted to be used in cellular communication technology such as TimeDivision Multiple Access (TDMA), Frequency Division Multiple Access(FDMA), Code Division Multiple Access (CDMA), Global System for MobileCommunications (GSM), etc. Both digital and analogue signals can betransmitted through the communication channel 318. These signals may bemodulated, encrypted and/or compressed signals as may be desirable forthe communication technology.

The server 302 includes a remote server accessible by the navigationdevice 200 via a wireless channel. The server 302 may include a networkserver located on a local area network (LAN), wide area network (WAN),virtual private network (VPN), etc.

The server 302 may include a personal computer such as a desktop orlaptop computer, and the communication channel 318 may be a cableconnected between the personal computer and the navigation device 200.Alternatively, a personal computer may be connected between thenavigation device 200 and the server 302 to establish an internetconnection between the server 302 and the navigation device 200.Alternatively, a mobile telephone or other handheld device may establisha wireless connection to the internet, for connecting the navigationdevice 200 to the server 302 via the internet.

The navigation device 200 may be provided with information from theserver 302 via information downloads which may be periodically updatedautomatically or upon a user connecting navigation device 200 to theserver 302 and/or may be more dynamic upon a more constant or frequentconnection being made between the server 302 and navigation device 200via a wireless mobile connection device and TCP/IP connection forexample. For many dynamic calculations, the processor 304 in the server302 may be used to handle the bulk of the processing needs, however,processor 210 of navigation device 200 can also handle much processingand calculation, oftentimes independent of a connection to a server 302.

As indicated above in FIG. 2, a navigation device 200 includes aprocessor 210, an input device 220, and a display screen 240. The inputdevice 220 and display screen 240 are integrated into an integratedinput and display device to enable both input of information (via directinput, menu selection, etc.) and display of information through a touchpanel screen, for example. Such a screen may be a touch input LCDscreen, for example, as is well known to those of ordinary skill in theart. Further, the navigation device 200 can also include any additionalinput device 220 and/or any additional output device 241, such as audioinput/output devices for example.

Referring now to FIG. 4 of the accompanying drawings, the memoryresource 230 stores a boot loader program (not shown) that is executedby the processor 210 in order to load an operating system 470 from thememory resource 230 for execution by functional hardware components 460,which provides an environment in which application software 480 can run.The operating system 470 serves to control the functional hardwarecomponents 460 and resides between the application software 480 and thefunctional hardware components 460. The application software 480provides an operational environment including the GUI that supports corefunctions of the navigation device 200, for example map viewing, routeplanning, navigation functions and any other functions associatedtherewith.

The application software 480 also includes an accelerometer module 490that is configured to receive and process accelerometer data from theaccelerometer 290. The function and operation of the accelerometermodule 490 is described in more detail below.

When the user switches on the device 200, the device 200 acquires a GPSfix and calculates (in a known manner) the current location of thenavigation device 200. The location is calculated using a locationdetermining unit comprising the antenna/receiver 250, the connection 255and a location determining module (not shown) included in the processor210. The user is then presented, as shown in FIG. 5, with a view inpseudo three dimensions on a touch screen display 240 of the localenvironment 494 in which the navigation device 200 is determined to belocated, and in a region 496 of the display 240 below the localenvironment a series of control and status messages. The device 200provides route planning, mapping and navigation functions to the user,in dependence on user input provided by a series of interlinked soft orvirtual buttons and menu screens that can be displayed on the display240. The device 200 continues to determine its location using thelocation determination unit on an ongoing basis whilst it isoperational.

The accelerometer in certain embodiments is a three-axis accelerometerand measures acceleration along each of three orthogonal axes (x, y, z).In alternative embodiments the accelerometer is a one or two axisaccelerometer. The accelerometer may be an analogue or digitalacceleration sensor and can be of any type. In one embodiment, theaccelerometer is a Bosch Sensortec SMB380 triaxial acceleration sensor.

In operation, the accelerometer continuously provides data representingthe results of accelerometer measurements to the accelerometer module490 operating at the processor 210. The data provided by theaccelerometer comprises acceleration data for each axis (x, y, z) of theaccelerometer. The accelerometer module 490 treats data representativeof each measurement as an accelerometer output data item. Themeasurement may be perfomed at a single instant, or may be averaged overa period of time. The averaging can be performed by the accelerometer290 itself or by the accelerometer module 490.

The accelerometer data items are stored in the memory 230 for subsequenttransmission to the server 302 and/or processing. In one mode ofoperation the accelerometer data items are processed either by theaccelerometer module 490 or the server 302 in order to identify whetherexceptional driving events (for example, harsh braking or acceleration,swerving or other emergency manoeuvres) have occurred during a period oftime.

The correct processing of accelerometer data requires that the outputfrom the accelerometer when stationary is known. Each accelerometer dataitem comprises, or can be processed to provide, a measured accelerationvector a=(ax, ay, az).

If the accelerometer 290 is stationary (not moving), the magnitude ofthe acceleration vector a=(ax, ay, az) is substantially equal to theEarth's gravity (g) (static acceleration). If the device is being moved,additional forces acting on the accelerometer can be determined from themeasured acceleration vector, compensated for the acceleration vectorwhen the device is stationary.

The magnitude of g determined by the accelerometer 290 differs underchanging temperatures or other environmental conditions due to theeffect of such changing temperatures or other environmental conditionson operation of the accelerometer 290. Furthermore, the vectorcomponents ax, ay and az of the acceleration vector when the device isstationary depend on the orientation of the accelerometer with respectto the ground at that time.

It is an important feature of the embodiment that the accelerometermodule 490 is able to determine an orientation output representative ofthe accelerometer with respect to the vehicle from stored accelerometeroutput data items, and to use that orientation output in subsequentprocessing and analysis of accelerometer measurements. An example of thedetermination of the orientation output is described in relation toFIGS. 6a and 6 b.

FIGS. 6a and 6b show the device 200 installed in a vehicle 500, in aside view and a head-on view with respect to the vehicle respectively. Avehicle frame of reference when the vehicle is on level ground isillustrated in FIGS. 6a and 6b in which an x axis is aligned with theforward direction of motion of the vehicle, a y axis is aligned at 90°to the x-axis in a horizontal plane, and a z-axis is the vertical axis.It can be seen that in this example the device 200 is oriented at anangle of α° rotated around the y-axis of the vehicle in the x-z plane,and at angle of β° rotated around the x-axis in the z-y plane.

In order to determine automatically an orientation output representativeof the orientation of the accelerometer with respect to the vehicle (andthus representative of the angles α° and β° in this example) theaccelerator module 490 builds up an accelerometer output data setcomprising accelerometer output data items representative ofaccelerometer measurements taken whilst the vehicle 500 is stationary.

The accelerometer module 490 determines that the vehicle 500 isstationary from GPS data obtained by the device 200. Usually theaccelerometer module 490 selects an accelerometer output data item forinclusion in the accelerometer output data set only if at the time ofmeasurement the vehicle 500 has been stationary for greater than apredetermined threshold period of time (for example 20 seconds) toensure that the accelerometer 290 has settled to its stationary state.

The basis of the determination of the orientation output by theaccelerator module 490 from the accelerator output data set is that thedata set includes data resulting from measurements at a sufficientnumber of different vehicle locations that the mean or medianinclination of the ground at the vehicle location at the time of eachmeasurement, across all measurements represented by the data set, iszero.

FIG. 7 shows three locations for which accelerator measurements areincluded in the accelerometer data set. It can be seen that at the firstlocation the vehicle 500 is on a slope facing upwards, and at the secondtwo locations the vehicle 500 is on a slope facing downwards.

The accelerometer output data items obtained at each of the threelocations of FIG. 7 are represented schematically in FIGS. 8a and 8b asthe measured acceleration vectors a₁ (which represents the accelerometeroutputs ax, ay, az measured at position 1), a₂ (which represents theaccelerometer outputs ax, ay, az measured at position 2) and a₃ (whichrepresents the accelerometer outputs ax, ay, az measured at position 3).The acceleration vectors a₁, a₂ and a₃ are shown in FIGS. 8a and 8b withrespect to a frame of reference defined relative to the device 200, inthe x-z plane and the y-z plane respectively.

The accelerometer module 490 averages the three measured accelerationvectors a₁, a₂ and a₃ in order to obtain an average stationaryacceleration vector a_(m). If measurements obtained from a sufficientlylarge number of vehicle locations are included in the accelerator outputdata set, then the average stationary acceleration vector a_(m) can betaken to represent the acceleration vector that would be measured by theaccelerometer if the vehicle was on level ground, as the averageinclination of the ground across all measurements tends to zero as thenumber of measurements, and number of vehicle locations, increases. Theaverage stationary acceleration vector a_(m) may be used as a referenceoutput for subsequent accelerometer measurements. The accelerometermodule 490 may, optionally, calculate the orientation of the device 200with respect to the vehicle 500 from the average stationary accelerationvector a_(m).

Operation of the accelerator module 490 is illustrated in overview inthe flowchart of FIG. 9.

The accelerometer module 490 can optionally be configured to selectmeasurements for inclusion in the accelerometer output data set only ifthe vehicle location at the time of the measurements is sufficientlyseparated from vehicle locations for other measurements included in thedata set, for example by greater than a threshold distance (such as 50m, 100 m or 200 m). That can ensure that the measurement data includedin the data set does not originate from clusters of vehicle locations,which could distort the data set and cause the average inclination ofthe ground across the data set to be not equal to zero.

The accelerometer module 490 can also be configured to delete outliersfrom the accelerometer data set, or to exclude such outliers from theprocessing of the accelerometer data set, to ensure that the processingof the data set is not distorted by such outliers.

The accelerometer module 490 is usually configured to update theaccelerometer output data set, and to recalculate the average stationaryacceleration vector a_(m) or other orientation output, on an ongoingbasis during normal use of the device 200 and vehicle 500. Theaccelerometer module 490 is configured to maintain a predeterminednumber of accelerometer output data items in the data set on afirst-in-first-out basis and/or is configured to delete accelerometeroutput data items from the data set when they become older than apredetermined age.

As mentioned above, the accelerometer 290 is sensitive to environmentalconditions, for example temperature. In one variant of the embodiment ofFIG. 2, the accelerator module is configured to receive temperature datafrom a temperature sensor (not shown) that is either external to orintegrated in the device 200. In one example the temperature sensor isthe vehicle's temperature sensor and the device 200 is interfaced tothat sensor. The accelerometer module 490 only selects accelerometeroutput data items for inclusion in the accelerometer data set if thetemperature at the time of measurement is below a predetermined maximumtemperature and/or above a predetermined minimum temperature (forexample between 5° C. and 35° C.). The threshold maximum and minimumvalues of temperature may be selected in dependence on the normaloperating temperature range for the particular accelerometer that isused.

Another mode of operation of the accelerometer module 490 is illustratedin the flow chart of FIG. 10. In that example, the accelerometer outputdata set is referred to as the standstill queue and the accelerometeroutput data items are referred to as standstill points. The speed of thevehicle determined from GPS measurements is referred to as vGPS, theposition determined from GPS measurements is referred to as GPS, and theacceleration determined from the accelerometer is referred to as acc.

The accelerometer module 490 first detects whether the vehicle is in astationary state. It then determines a standstill point (average staticacceleration vector, average temperature, average GPS position, and aquality parameter that represents the variation (Δacc, Δtemp, Δgps) inthose parameters during the stationary state) for that stationary state.The accelerometer module 490 then checks that the quality parameter forthe standstill point is within predetermined thresholds and that thedetected standstill point was obtained for a different location(separated by at least 200 m in the example of FIG. 10) than the lastdetected standstill point. The standstill point is then stored in thestandstill queue.

The standstill queue is maintained on a first-in-first-out basis. Oncethe standstill queue is full, the quality parameters of the standstillpoints are checked again to confirm that they are within predeterminedthresholds, and if so the average or best fit static acceleration vector(taking account of environmental conditions and statistical variations)is then determined from the standstill points. A rotation matrix isdetermined that represent the difference between the calculated averagestatic acceleration vector the acceleration vector that would beobtained if the accelerometer axes were aligned with the vehicle axes(referred to as the idealized gravity vector). The orientation of theaccelerometer with respect to the vehicle is then calculated from therotation matrix, and expressed as a roll and pitch. The yaw of theaccelerometer with respect to the vehicle in that example maysubsequently be determined using another procedure, for examplecomparison of a GPS trajectory with accelerometer output data correctedfor the calculated roll and pitch.

In another variant of the embodiment of FIG. 2, the accelerometer module490 builds up an accelerometer output data set, and determines anorientation output, for each of a plurality of temperature bands (forexample 0° C. to 10° C., 10° C. to 20° C., 20° C. to 30° C.). Theaccelerometer module 490 includes an accelerometer output data item inone or other of the data sets in dependence on the temperature at thetime of measurement for that data item. In processing subsequentaccelerometer measurements, the accelerometer module 490 selects theorientation output corresponding to a particular temperature band foruse in that processing in dependence on the measured temperature at thetime of those subsequent measurements.

The orientation of the accelerometer 290 with respect to the vehicle 500determined by the accelerometer module 490 can also be provided by theaccelerometer module 490 to the location determining unit for use inlocation determination. In embodiments in which the accelerometer 290forms an integral part of the device 200 and is in a known orientationwith respect to antennas or other components of the locationdetermination unit, the orientation can be used to control or optimisereception or processing of GPS or other signals.

In the embodiment of FIG. 2, the accelerometer 290 is integrated in, orin communication with, a navigation device that provides navigationfunctions to a user under control of the user. In alternativeembodiments, the accelerometer is included in a data logger device thatlogs location data and/or accelerometer data and/or other vehicle dataand communicates such data to the server 302. An example of such analternative embodiment is illustrated in FIG. 11, which shows ablack-box type device 600 for installation in a vehicle.

The device 600 includes some of the components of the device 200,including the accelerometer 290, the processor 210, the memory 230, andthe antenna/receiver 250. The temperature or other environmental sensor602 is also shown in FIG. 11. The device 600 is optionally also able tointerface with vehicle systems to obtain and log other vehicle data. Thelocation-determining and accelerometer functions of device 600 are asdescribed in relation to the device 200 of FIG. 2, but the device 600does not provide navigation or display functions to the driver of avehicle but instead logs and transmits data to the server 302 forsubsequent analysis. The device 600 is particularly suitable forinstallation in a commercial vehicle. Both the device 600 and the device200 may be used in commercial vehicle and fleet management systems, forexample the TomTom Work and TomTom Webfleet systems.

It will be appreciated that whilst various aspects and embodiments ofthe present invention have heretofore been described, the scope of thepresent invention is not limited to the particular arrangements set outherein and instead extends to encompass all arrangements, andmodifications and alterations thereto, which fall within the scope ofthe appended claims.

Whilst embodiments described in the foregoing detailed description referto GPS, it should be noted that the navigation device may utilise anykind of position sensing technology as an alternative to (or indeed inaddition to) GPS. For example the navigation device may utilise usingother global navigation satellite systems such as the European Galileosystem. Equally, it is not limited to satellite based but could readilyfunction using ground based beacons or any other kind of system thatenables the device to determine its geographic location.

Alternative embodiments of the invention can be implemented as acomputer program product for use with a computer system, the computerprogram product being, for example, a series of computer instructionsstored on a tangible data recording medium, such as a diskette, CD-ROM,ROM, or fixed disk, or embodied in a computer data signal, the signalbeing transmitted over a tangible medium or a wireless medium, forexample, microwave or infrared. The series of computer instructions canconstitute all or part of the functionality described above, and canalso be stored in any memory device, volatile or non-volatile, such assemiconductor, magnetic, optical or other memory device.

It will also be well understood by persons of ordinary skill in the artthat whilst embodiments described herein implement certain functionalityby means of software, that functionality could equally be implementedsolely in hardware (for example by means of one or more ASICs(application specific integrated circuit)) or indeed by a mix ofhardware and software. As such, the scope of the present inventionshould not be interpreted as being limited only to being implemented insoftware.

It will be understood that the present invention has been describedabove purely by way of example, and modifications of detail can be madewithin the scope of the invention.

Each feature disclosed in the description, and (where appropriate) theclaims and drawings may be provided independently or in any appropriatecombination.

Lastly, it should also be noted that whilst the accompanying claims setout particular combinations of features described herein, the scope ofthe present invention is not limited to the particular combinationshereafter claimed, but instead extends to encompass any combination offeatures or embodiments herein disclosed irrespective of whether or notthat particular combination has been specifically enumerated in theaccompanying claims at this time.

1. A vehicle accelerometer system, comprising: an accelerometer forinstallation in a vehicle; a processor for selection of accelerometeroutput data items for inclusion in an accelerometer output data setrepresentative of measurements by the accelerometer at a plurality ofdifferent vehicle locations, each accelerometer output data item beingrepresentative of a respective measurement by the accelerometer; and astorage device for storing the accelerometer output data set, whereinthe processor is configured to process the accelerometer output data setto determine an orientation output representative of the orientation ofthe accelerometer with respect to the vehicle.
 2. The system accordingto claim 1, wherein the orientation output is the orientation of theaccelerometer with respect to the vehicle.
 3. The system according toclaim 1, wherein the orientation output comprises a reference outputrepresentative of the output from the accelerometer when the vehicle ison level ground.
 4. The system according to any preceding claim 1,wherein the processing of the accelerometer output data set comprisesdetermining a mean or median value of the accelerometer measurementsrepresented by the accelerometer output data set, and using thedetermined mean or median value to determine the orientation output. 5.The system according to claim 1, wherein the system comprises or isconfigured to communicate with a location determining unit.
 6. Thesystem according to claim 1, wherein the processor is configured toselect an accelerometer output data item for inclusion in theaccelerometer output data set in dependence on the speed of the vehicleat the time of the accelerometer measurement.
 7. The system according toclaim 1, wherein each output data item included in the accelerometeroutput data set is representative of a respective measurement by theaccelerometer when the vehicle is substantially stationary.
 8. Thesystem according to claim 1, wherein the processor is configured toselect an accelerometer output data item for inclusion in theaccelerometer output data set in dependence on the location of thevehicle at the time of the accelerometer measurement.
 9. The systemaccording to claim 1, wherein the processor is configured to select anaccelerometer output data item for inclusion in the accelerometer outputdata set in dependence on the separation of the location of the vehicleat the time of the measurement from the location of the vehicle at thetime of measurements represented by other output data items.
 10. Thesystem according to claim 1, wherein the processor is configured toselect an accelerometer output data item for inclusion in theaccelerometer output data set in dependence on the value of anenvironmental parameter at the time of the accelerometer measurement.11. The system according to claim 3, wherein the processor is configuredto provide a plurality of accelerometer output data sets eachcorresponding to a respective range or value of an environmentalparameter, and to process each accelerometer output data set todetermine a reference output for each range or value of theenvironmental parameter.
 12. The system according to claim 11, whereinthe processor is configured to select one of the accelerometer outputdata sets in which to include an accelerometer output data item independence on the value of the environmental parameter at the time ofthe accelerometer measurement represented by that accelerometer outputdata item.
 13. The system according to claim 10, wherein theenvironmental parameter comprises temperature.
 14. The system accordingto any preceding claim 1, wherein the processor is configured to processthe accelerometer output data set to determine the orientation output ifthe number of output data items in the accelerometer output data set isgreater than a predetermined threshold.
 15. The system according toclaim 1, wherein the processor is configured to remove accelerometeroutput data items that are representative of old accelerometermeasurements from the accelerometer output data set.
 16. The systemaccording to any preceding claim 1, wherein the processor is configuredto receive an acceleration output data item from the accelerometer andto determine the acceleration of the vehicle in dependence on theacceleration output data item and the orientation output so as tocompensate for the orientation of the accelerometer with respect to thevehicle.
 17. A method of operation of an accelerometer system,comprising: receiving accelerometer output data items from anaccelerometer, each accelerometer output data item being representativeof a respective measurement by the accelerometer at a differentlocation; selecting a plurality of the accelerometer output data itemsfor inclusion in an accelerometer output data set; storing theaccelerometer output data set; and processing the accelerometer outputdata set to determine an orientation output representative of theorientation of the accelerometer with respect to a vehicle.
 18. Anon-transitory computer readable medium comprising instructions which,when read by a processor of an accelerator system, cause the acceleratorsystem to perform the method according to claim 17.